Django তে সফলতা, সতর্কতা এবং ত্রুটি বার্তা প্রদর্শন করার জন্য messages framework ব্যবহার করা হয়। এটি একটি খুব শক্তিশালী ফিচার যা ব্যবহারকারীদের জন্য বিভিন্ন ধরণের বার্তা (যেমন: সফলতা, সতর্কতা, ত্রুটি ইত্যাদি) সহজে এবং স্পষ্টভাবে দেখানোর সুযোগ দেয়।
Django তে messages framework কিভাবে কাজ করে
Django তে messages ফ্রেমওয়ার্কটি বার্তা পরিচালনা করতে ব্যবহৃত হয়। এটি বিভিন্ন ধরনের বার্তা (success, error, warning) সংরক্ষণ করে এবং পরবর্তী রিকোয়েস্টে ব্যবহারকারীকে দেখানো হয়। এই বার্তাগুলো সাধারণত টেমপ্লেটের মধ্যে প্রদর্শন করা হয়।
১. messages মডিউল ইমপোর্ট করা
প্রথমে Django এর messages মডিউলটি ইমপোর্ট করতে হবে।
from django.contrib import messages
২. ভিউতে বার্তা সেট করা
ভিউতে বার্তা পাঠানোর জন্য messages মডিউলের বিভিন্ন ফাংশন ব্যবহার করা হয়। যেমন:
messages.success(): সফলতার বার্তা।messages.warning(): সতর্কতার বার্তা।messages.error(): ত্রুটির বার্তা।messages.info(): সাধারণ তথ্য বার্তা।
উদাহরণস্বরূপ:
from django.contrib import messages
from django.shortcuts import render, redirect
def my_view(request):
if request.method == 'POST':
# কিছু কাজ করা
messages.success(request, 'আপনার তথ্য সফলভাবে সেভ হয়েছে!')
return redirect('home')
else:
messages.warning(request, 'আপনার ফর্মটি পূর্ণ করুন!')
return render(request, 'form_page.html')
এখানে:
messages.success(request, 'আপনার তথ্য সফলভাবে সেভ হয়েছে!'): ব্যবহারকারীকে সফলতার বার্তা দেখানো হচ্ছে।messages.warning(request, 'আপনার ফর্মটি পূর্ণ করুন!'): একটি সতর্কতা বার্তা প্রদর্শিত হচ্ছে।
৩. টেমপ্লেটে বার্তা প্রদর্শন করা
আপনি messages ফ্রেমওয়ার্কের বার্তাগুলো আপনার টেমপ্লেটে ব্যবহার করতে পারেন। এটি সাধারণত {% for message in messages %} লুপের মাধ্যমে করা হয়।
{% if messages %}
<div class="messages">
{% for message in messages %}
<div class="alert alert-{{ message.tags }}">
{{ message }}
</div>
{% endfor %}
</div>
{% endif %}
এখানে:
{{ message.tags }}: বার্তার টাইপ (success, warning, error, info) অনুযায়ী CSS ক্লাস অ্যাসাইন করা হবে।{{ message }}: বার্তা টেক্সটটি প্রদর্শন করা হবে।
৪. বার্তা শো করার জন্য স্টাইলিং
আপনি CSS ব্যবহার করে বার্তাগুলোকে সুন্দরভাবে শো করতে পারেন। উদাহরণস্বরূপ:
.alert {
padding: 10px;
margin-bottom: 20px;
border-radius: 5px;
font-size: 16px;
}
.alert-success {
background-color: #d4edda;
color: #155724;
}
.alert-warning {
background-color: #fff3cd;
color: #856404;
}
.alert-danger {
background-color: #f8d7da;
color: #721c24;
}
.alert-info {
background-color: #cce5ff;
color: #004085;
}
এই CSS কোডে:
.alert-success: সফলতার বার্তার জন্য.alert-warning: সতর্কতার বার্তার জন্য.alert-danger: ত্রুটির বার্তার জন্য.alert-info: সাধারণ তথ্য বার্তার জন্য
৫. বার্তা ক্লিয়ার করা
Django তে বার্তা স্বয়ংক্রিয়ভাবে পরবর্তী রিকোয়েস্টে মুছে ফেলা হয়, তবে আপনি যদি চান যে বার্তা সিস্টেমে কিছু নির্দিষ্ট সময়ের জন্য রাখুন, তখন আপনি session বা cookie ব্যবহার করতে পারেন।
সারাংশ
- Django তে বার্তা পাঠাতে
messagesফ্রেমওয়ার্ক ব্যবহৃত হয়। - বার্তাগুলো বিভিন্ন ফাংশন যেমন
messages.success(),messages.warning(),messages.error(),messages.info()দিয়ে সেট করা হয়। - বার্তা টেমপ্লেটে
{% for message in messages %}লুপের মাধ্যমে প্রদর্শিত হয়। - বার্তা স্টাইলিং এবং কাস্টমাইজেশন CSS এর মাধ্যমে করা যেতে পারে।
এইভাবে Django তে বিভিন্ন ধরনের বার্তা ব্যবহারকারীকে দেখানো হয়, যা ইউজার এক্সপেরিয়েন্স উন্নত করতে সাহায্য করে।
Read more